02. 更改最后一个 commit
更改最后一个 commit
你已经使用
git commit
命令提交了大量的 commit。现在,借助
--amend
选项,你可以更改最近的 commit。
$ git commit --amend
如果你的工作目录没有内容(也就是仓库中没有任何未 commit 的更改),那么运行
git commit --amend
将使你能够重新提供 commit 消息。代码编辑器将打开,并显示原始 commit 消息。只需纠正拼错的单词或重新表述即可!然后保存文件并关闭编辑器,以便采用新的 commit 消息。
向 commit 中添加忘记的文件
此外,
git commit --amend
使你能够包含忘记包含的文件(或文件更改)。假设你更新了整个网站的导航链接颜色。commit 了该更改,并以为完事了。但是后来发现深藏在页面上的一个特殊导航链接没有新的颜色。你可以执行新的 commit 并更新该链接的颜色,但是这样就会出现两个 commit 执行完全相同的任务(更改链接颜色)。
相反,你可以修改最后一个 commit(更新所有其他链接颜色的 commit)以包含这个忘记的链接。要包含忘记的链接,只需:
- 编辑文件
- 保存文件
- 暂存文件
-
运行
git commit --amend
你对必要的 CSS 和/或 HTML 文件作出了更改,以便修正被遗忘的链接样式,然后保存所有被修改的文件,并使用
git add
暂存所有被修改的文件(就像要提交新的 commit 那样!),但是你可以运行
git commit --amend
来更新最近的 commit,而不是创建新的 commit。